<?php
// 应用公共文件

/**
 * 脱敏
 *
 * @authors: Msy
 * @Created-Time: 2022/10/17 17:54
 * @param $string 需要脱敏的字符
 * @param $start  开始位置
 * @param $length 脱敏长度
 * @param $re     替换字符
 * @return string
 */
function desensitize($string, $start = 0, $length = 0, $re = '*'){
    if(empty($string) || empty($length) || empty($re)) return $string;
    $end = $start + $length;
    $strlen = mb_strlen($string);
    $str_arr = array();
    for($i=0; $i<$strlen; $i++) {
        if($i>=$start && $i<$end){
             $str_arr[] = $re;
        }
        else{
            $str_arr[] = mb_substr($string, $i, 1);
        }

    }
    return implode('',$str_arr);
}